草庐IT

Python 单元测试和多线程

全部标签

ruby-on-rails - Rspec Controller 在 Rails 中测试继承自 AbstractController::Base 的 Controller

我正在为我未构建的应用程序编写Controller测试,因此这绝对是一个学习过程。这是我第一次遇到直接继承自AbstractController::Base的Controller。显然,它的行为与其他Controller不同。其格式大致为:classSchwadGenericController我尝试了正常测试,这是我目前要让任何事情发生的地方。require'rails_helper'describeSchwadGenericControllerdo#before(:each)do#SchwadGenericController.skip_authorize_resource#end

ruby-on-rails - 如何使用 RSpec 测试生成器

有没有推荐的测试方式Railsgenerators与RSpec?我找到的唯一解决方案是GeneratorSpecgem,已经两年多没有更新了。 最佳答案 有gemhttps://github.com/petergoldstein/generator_spec,虽然维护得不是很积极,但做得不错 关于ruby-on-rails-如何使用RSpec测试生成器,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/

ruby-on-rails - 独立测试 Rails 部分 View

我在标准rails2.1项目中使用Test/Unit。我希望能够独立于任何特定的Controller/操作来测试分部View。好像ZenTest'sTest::Rails::ViewTestCase会有所帮助,但我无法让它工作,与view_testhttp://www.continuousthinking.com/tags/view_test类似Google出现的大部分内容似乎都已经过时了,所以我猜它并不真正适用于Rails2.1非常感谢任何帮助。谢谢,罗兰 最佳答案 我们正在使用RSpec在我们的Rails2.1项目中,我们可以做

python - 用于从 Python 到 Ruby 查找集合的所有分区的翻译函数

我有以下python函数来递归查找集合的所有分区:defpartitions(set_):ifnotset_:yield[]returnforiinxrange(2**len(set_)/2):parts=[set(),set()]foriteminset_:parts[i&1].add(item)i>>=1forbinpartitions(parts[1]):yield[parts[0]]+bforpinpartitions(["a","b","c","d"]):print(p)有人可以帮我把它翻译成ruby​​吗?这是我目前所拥有的:defpartitions(set)ifnots

ruby - 无法让测试单元启动在 ruby​​ 1.9.2 中工作

我正在使用Ruby1.9.2(ruby-vyields:ruby1.9.2p290(2011-07-09revision32553)[x86_64-linux]),我正在尝试让它工作:require'test/unit'classTestStartup当我运行它时,我得到了Loadedsuitetest_startupStartedintest1.Finishedin0.000395seconds.1tests,0assertions,0failures,0errors,0skips我很难找到有关此功能的文档,除了SO等上的零散帖子。是的,我想使用这个功能而不是设置。TIA

ruby - 执行过期异常使 Ruby 线程崩溃,但处理了 Timeout::Error

任何人都可以解释为什么当对方法的调用看起来像这样时我可能会看到这个堆栈(由HTTParty::post请求引起):beginresponse=HTTParty::post(url,options)rescuelogger.warn("Couldnotpostto#{url}")rescueTimeout::Errorlogger.warn("Couldnotpostto#{url}:timeout")end堆栈:/usr/local/lib/ruby/1.8/timeout.rb:64:in`timeout'/usr/local/lib/ruby/1.8/net/protocol.rb

ruby-on-rails - minitest 测试和代码覆盖率

我使用mini-test来测试框架。我使用omniauthgem进行身份验证。我使用simplecov进行代码覆盖。我使用"bundleexecrake"或"rakeminitest:controllers"运行我的测试。我举一个Controller的例子。当我运行rakeminitest:controllers时,Controller代码覆盖率变为100%。但是,当我运行bundleexecrake时,Controller代码覆盖率变为60%。SessionsController.rb代码:classSessionsControllersessionController_测试.rbr

ruby-on-rails - Rack 中间件和线程安全

我的Rails4应用程序使用了一个自定义Rack中间件。如果客户端未提供有效信息(我'正在开发API)。因此,在每个请求之前它会更改这些header,并且在每个请求之后它会添加一个带有自定义媒体类型信息的自定义X-Something-Media-Typeheader。我想切换到Puma,因此我有点担心这种中间件的线程安全性。我没有使用实例变量,除了我们在每个中间件中遇到的常见@app.call一次,但即使在这里我也复制了一些我在RailsCasts的评论中读到的内容:definitialize(app)@app=appenddefcall(env)dup._call(env)endde

ruby-on-rails - 仍然建议使用 Minitest 在 Rails 4 中测试路由吗?

在Rails3中,当在MiniTest中编写功能测试时,我养成了将路由测试与Controller操作分开测试的习惯。我从RailsGuideonTesting-Section9:TestingRoutes得到了这个想法.然而,在将我的应用程序升级到Rails4之后,我注意到如果我不为get|patch|post|delete方法提供一组适当的参数。例如,给定路线:#config/routes.rbnamespace"api"donamespace"v2",defaults:{format::json}doresources:usersdoresources:postsdoresourc

ruby - 使用 watir-webdriver 打开多个线程导致 'Connection refused' 错误

我有这个简单的例子:require'watir-webdriver'arr=[]sites=["www.google.com","www.bbc.com","www.cnn.com","www.gmail.com"]sites.eachdo|site|arr每次我运行这个脚本,我都会得到ruby/2.1.0/net/http.rb:879:in`initialize':Connectionrefused-connect(2)for"127.0.0.1"port9517(Errno::ECONNREFUSED)或者其中一个浏览器在至少一个线程上意外关闭。另一方面,如果我在每个循环周期结束